經過了30天的挑戰,我成功地完成了這次以AI輔助Odoo開發的學習之旅。在這段期間,我不僅深入了解了Odoo 17的開發規範,更學習了如何有效地運用AI工具,如ChatGPT和Cursor,來提升開發效率。以下,我將分別分享這30天來的心得與收穫。
在挑戰的開始,我首先建立了Odoo的開發環境。透過Day 2和Day 3的學習,我熟悉了相關軟體的安裝,以及如何使用Pycharm進行Odoo 17的開發設置。
接著,在Day 4,我嘗試使用ChatGPT來撰寫Odoo模組的流程及架構。這是我第一次將認真將所有程式碼用AI輔助工具應用於開發中,起初對於AI能否真正理解我的需求感到懷疑。然而,隨著逐步嘗試,我發現ChatGPT在理解指令和生成代碼方面都有著驚人的表現。
從Day 5到Day 18,我專注於開發一個學校圖書管理系統。這是一個涵蓋多項功能的完整項目,包括圖書管理、學生借閱、預約系統、權限設置、逾期提醒等。
在開發過程中,我以使用者故事為導向,逐步完善系統功能。例如,在Day 6,我根據【使用者故事1】利用ChatGPT產生了所有需要的程式碼。這種方法讓我能夠從使用者的角度思考,確保開發出的功能真正符合需求。
在Day 7,我將模組繁體中文化,這對於提升使用者體驗至關重要。隨後,在Day 12和Day 13,針對學生與系統管理者的權限進行了細緻的設計,確保系統的安全性和便利性。
在後續的開發中,我持續深化系統功能。例如,在Day 14,實現了逾期提醒並自動寄送e-mail的功能;在Day 15和Day 16,新增了網站查詢圖書和圖書預約的功能,提升了系統的實用性。
最後,在Day 17和Day 18,製作了各類統計表及報表,為管理者提供了有價值的數據分析,並對整個項目進行了總結。
在完成圖書管理系統的開發後,我開始探索新的AI輔助開發工具。在Day 19和Day 20,我嘗試了Cursor、VS Code結合Continue和Claude Dev等工具,並將它們與Pycharm共同使用於Odoo 17的開發目錄中。這些工具的引入,使得開發流程更加順暢,效率也有所提升。
從Day 21到Day 29,我投入到另一個項目的開發——投資管理系統。
在Day 21,我深入學習了AI輔助開發的進階運用,包括Readme的撰寫和Rules的制定。這讓我在後續的開發中,能夠更好地指導AI生成符合我需求的代碼。
在Day 22和Day 23,我利用Cursor產生了初始模組,並建立了自定義的觀察名單,以及個人股票的Demo資料。透過這些資料,我能夠模擬實際的投資情境,為後續的功能實現做準備。
在Day 24,我實現了每日自動更新台灣股市股票價格的功能。接著,在Day 25,生成了股票的K線圖,為投資分析提供了重要的視覺化工具。
在Day 26和Day 27,我將機器學習引入系統,透過分析歷史數據,給予買入賣出的建議,並預測股市的漲跌。這部分的開發讓我對AI在金融領域的應用有了更深的認識。
在Day 28,透過LINE發送提醒通知,實現了即時資訊的推送。最後,在Day 29,我利用自然語言處理(NLP)技術,篩選相關的新聞和公告,並進行文本分析,為投資決策提供了更多的依據。
整體而言,AI輔助開發工具在本次挑戰中扮演了重要的角色。它們加速了開發速度,並提供了許多創新的解決方案。然而,我也發現,AI工具並非萬能。開發者仍需具備紮實的基礎知識,才能正確地引導AI,並檢驗生成的代碼是否符合需求。
在30天的時間裡,我接觸了許多新的技術和工具。每一項新的嘗試,都需要投入時間去學習和適應。但也正是這種持續學習的過程,讓我在技術能力上有了顯著的提升。
透過本次挑戰,我深深體會到,作為一名開發者,需要具備開放的心態,勇於嘗試新技術。同時,理解業務需求,從使用者的角度出發,才能開發出真正有價值的產品。
完成這次挑戰後,我對於AI在軟體開發中的應用有了更深入的了解。我計劃在未來的工作中,繼續探索AI與開發的結合,並希望能夠將所學應用於實際的商業項目中,為企業創造更大的價值。
30天的挑戰告一段落,但學習的旅程仍在繼續。感謝在這段期間支持和幫助我的朋友、同事和線上的社群。未來,我將持續精進,追求技術的卓越,並期許自己能夠在專業領域中有所貢獻。